home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue26 / pagectrl / TEST3U.PAS < prev   
Encoding:
Pascal/Delphi Source File  |  1997-09-02  |  2.3 KB  |  93 lines

  1. unit Test3U;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   ComCtrls, StdCtrls, PageCtl3;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     ColorPageControl: TColorPageControl;
  12.     TabSheet1: TTabSheet;
  13.     TabSheet2: TTabSheet;
  14.     TabSheet3: TTabSheet;
  15.     Memo1: TMemo;
  16.     Memo2: TMemo;
  17.     Memo3: TMemo;
  18.     Button1: TButton;
  19.     Button2: TButton;
  20.     Button3: TButton;
  21.     Button4: TButton;
  22.     Button5: TButton;
  23.     ImageList1: TImageList;
  24.     procedure ColorPageControlDrawItem(Control: TWinControl; Index: Integer;
  25.       Rect: TRect; State: TOwnerDrawState);
  26.     procedure Button1Click(Sender: TObject);
  27.     procedure Button2Click(Sender: TObject);
  28.     procedure Button3Click(Sender: TObject);
  29.     procedure Button4Click(Sender: TObject);
  30.     procedure Button5Click(Sender: TObject);
  31.   private
  32.     { Private declarations }
  33.   public
  34.     { Public declarations }
  35.   end;
  36.  
  37. var
  38.   Form1: TForm1;
  39.  
  40. implementation
  41.  
  42. {$R *.DFM}
  43.  
  44. procedure TForm1.ColorPageControlDrawItem(Control: TWinControl;
  45.   Index: Integer; Rect: TRect; State: TOwnerDrawState);
  46. begin
  47.   with Control as TColorPageControl do
  48.   begin
  49.     DefaultDrawTab(Index, Rect, State);
  50.     if odSelected in State then
  51.     begin
  52.       Canvas.Pen.Color := clRed;
  53.       Canvas.MoveTo(Rect.Left, Rect.Top);
  54.       Canvas.LineTo(Rect.Right, Rect.Bottom);
  55.       Canvas.MoveTo(Rect.Left, Rect.Bottom);
  56.       Canvas.LineTo(Rect.Right, Rect.Top);
  57.     end;
  58.   end
  59. end;
  60.  
  61. procedure TForm1.Button1Click(Sender: TObject);
  62. const
  63.   Styles: array[Boolean] of TPageControlStyle =
  64.     (pcsStandard, pcsOwnerDraw);
  65. begin
  66.   ColorPageControl.Style := Styles[ColorPageControl.Style = pcsStandard]
  67. end;
  68.  
  69. procedure TForm1.Button2Click(Sender: TObject);
  70. begin
  71.   ColorPageControl.TabButtons := not ColorPageControl.TabButtons
  72. end;
  73.  
  74. procedure TForm1.Button3Click(Sender: TObject);
  75. begin
  76.   ColorPageControl.TabVPosition :=
  77.     TTabVPosition((Ord(ColorPageControl.TabVPosition) + 1) mod Succ(Ord(High(TTabVPosition))))
  78. end;
  79.  
  80. procedure TForm1.Button4Click(Sender: TObject);
  81. begin
  82.   ColorPageControl.TabVisible[TabSheet2] :=
  83.     not ColorPageControl.TabVisible[TabSheet2]
  84. end;
  85.  
  86. procedure TForm1.Button5Click(Sender: TObject);
  87. begin
  88.   ColorPageControl.TabImageVisible[TabSheet2] :=
  89.     not ColorPageControl.TabImageVisible[TabSheet2]
  90. end;
  91.  
  92. end.
  93.